run: test1.cpp test2.cpp
	g++ -o test1 test1.cpp
	mkdir output1
	./test1 < input/128input1 > output1/128output1
	./test1 < input/128input2 > output1/128output2
	./test1 < input/128input3 > output1/128output3
	./test1 < input/128input4 > output1/128output4
	./test1 < input/128input5 > output1/128output5
	./test1 < input/128input6 > output1/128output6
	./test1 < input/128input7 > output1/128output7
	./test1 < input/128input8 > output1/128output8
	./test1 < input/256input1 > output1/256output1
	./test1 < input/256input2 > output1/256output2
	./test1 < input/256input3 > output1/256output3
	./test1 < input/256input4 > output1/256output4
	./test1 < input/256input5 > output1/256output5
	./test1 < input/256input6 > output1/256output6
	./test1 < input/256input7 > output1/256output7
	./test1 < input/256input8 > output1/256output8
	./test1 < input/512input1 > output1/512output1
	./test1 < input/512input2 > output1/512output2
	./test1 < input/512input3 > output1/512output3
	./test1 < input/512input4 > output1/512output4
	./test1 < input/512input5 > output1/512output5
	./test1 < input/512input6 > output1/512output6
	./test1 < input/512input7 > output1/512output7
	./test1 < input/512input8 > output1/512output8
	./test1 < input/1024input1 > output1/1024output1
	./test1 < input/1024input2 > output1/1024output2
	./test1 < input/1024input3 > output1/1024output3
	./test1 < input/1024input4 > output1/1024output4
	./test1 < input/1024input5 > output1/1024output5
	./test1 < input/1024input6 > output1/1024output6
	./test1 < input/1024input7 > output1/1024output7
	./test1 < input/1024input8 > output1/1024output8
	g++ -o test2 test2.cpp
	mkdir output2
	./test2 < input/128input1 > output2/128output1
	./test2 < input/128input2 > output2/128output2
	./test2 < input/128input3 > output2/128output3
	./test2 < input/128input4 > output2/128output4
	./test2 < input/128input5 > output2/128output5
	./test2 < input/128input6 > output2/128output6
	./test2 < input/128input7 > output2/128output7
	./test2 < input/128input8 > output2/128output8
	./test2 < input/256input1 > output2/256output1
	./test2 < input/256input2 > output2/256output2
	./test2 < input/256input3 > output2/256output3
	./test2 < input/256input4 > output2/256output4
	./test2 < input/256input5 > output2/256output5
	./test2 < input/256input6 > output2/256output6
	./test2 < input/256input7 > output2/256output7
	./test2 < input/256input8 > output2/256output8
	./test2 < input/512input1 > output2/512output1
	./test2 < input/512input2 > output2/512output2
	./test2 < input/512input3 > output2/512output3
	./test2 < input/512input4 > output2/512output4
	./test2 < input/512input5 > output2/512output5
	./test2 < input/512input6 > output2/512output6
	./test2 < input/512input7 > output2/512output7
	./test2 < input/512input8 > output2/512output8
	./test2 < input/1024input1 > output2/1024output1
	./test2 < input/1024input2 > output2/1024output2
	./test2 < input/1024input3 > output2/1024output3
	./test2 < input/1024input4 > output2/1024output4
	./test2 < input/1024input5 > output2/1024output5
	./test2 < input/1024input6 > output2/1024output6
	./test2 < input/1024input7 > output2/1024output7
	./test2 < input/1024input8 > output2/1024output8


clean:
	rm test1 test2 *.aux *.log *.pdf auto output* html -fr

debug: test1.cpp test2.cpp project.h
	g++ -o test1 test1.cpp -g
	g++ -o test2 test2.cpp -g

answers: tex/answers.tex
	xelatex tex/answers

math: tex/math.tex
	xelatex tex/math

design: doxygenfile/class.dot tex/design.tex
	xelatex tex/design
	doxygen doxygenfile/class.dot
	firefox html/index.html

